package com.wicket.okrcomponent.biz.service.dto.req;

import com.wicket.okrcomponent.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.validation.constraints.NotNull;
import lombok.Data;

/**
 * @desc AddTargetCycleAndPeopleEternalGinsengRedisComReqDto
 * @使用场景
 */
@Data
public class AddTargetCycleAndPeopleEternalGinsengRedisComReqDto
  extends BaseDto
  implements Serializable {

  /**
   * 业务数据对象 ACCT_STD_DATA_TARGET_CONT_SNAP:账户标准数据目标内容快照 ACCT_STD_DATA_AMT_SNAP:目标内容周期、相关人与账户快照 INIT_BUDGET_AND_REAL_ACCT:初始化预算或实体账户 TARGET_BUDGET_SET:目标预算设置 CACL_OR_UNDERPIN_STD_DATA_SNAP:计算或托底标准数据快照 EVA_TEMP_CONF_ARGUMENTS:评价模板配置参数 ORG_TYPE_DICTIONARY:组织架构类型字典 BUSINESS_DATA_OBJECT_TEST:业务数据对象验证 CALC_SUBJECTIVE_WEIGHT_SCORE:计算权重主观评分 CALC_DATA_RESULT:计算数据结果 PLATFORM_OM_CONF:平台运维配置 PLAN_TARGET_CALC_MQ_REMOTE_CONTROLLER:规划目标计算MQ遥控器 PLAN_TARGET_CALC_MQ_QUEUE:规划目标计算MQ排队 FINANCIAL_CALC_MQ_QUEUE:规划财务MQ排队 OKR_PLAN_TARGET_CALC_MQ_QUEUE:OKR目标计算MQ排队 KPI_PLAN_TARGET_CALC_MQ_QUEUE:绩效目标计算MQ排队 FINANCIAL_PLANN_MQ_REMOTE_CONTROLLER:规划财务MQ遥控器 MQ_HOVER_QUEUE_LOCK:MQ遥控器取号锁 MQ_REMOTE_CONTROLLER:MQ遥控器 OKR_TARGET_CALC_MQ_REMOTE_CONTROLLER:OKR目标计算MQ遥控器 KPI_TARGET_CALC_MQ_REMOTE_CONTROLLER:绩效目标计算MQ遥控器
   */
  @NotNull(message = "业务数据对象不能为空")
  @ApiModelProperty("业务数据对象")
  private String businessDataObject;

  /**
   * 数据对象批次标识
   */
  @ApiModelProperty("数据对象批次标识")
  private String dataObjectBatchCode;

  /**
   * 自定义字段值1
   */
  @NotNull(message = "周期ID不能为空")
  @ApiModelProperty("周期ID")
  private String customFieldValue1;

  /**
   * 自定义字段值2
   */
  @NotNull(message = "周期开始时间不能为空")
  @ApiModelProperty("周期开始时间")
  private String customFieldValue2;

  /**
   * 自定义字段值3
   */
  @NotNull(message = "周期结束时间不能为空")
  @ApiModelProperty("周期结束时间")
  private String customFieldValue3;

  /**
   * 自定义字段值4
   */
  @NotNull(message = "周期类型标识不能为空")
  @ApiModelProperty("周期类型标识")
  private String customFieldValue4;

  /**
   * 自定义字段值5
   */
  @ApiModelProperty("周期类型实例标识")
  private String customFieldValue5;

  /**
   * 自定义字段值19
   */
  @NotNull(message = "被评对象内容表主键ID不能为空")
  @ApiModelProperty("被评对象内容表主键ID")
  private String customFieldValue19;

  /**
   * 自定义字段值18
   */
  @NotNull(message = "被评对象类型编码不能为空")
  @ApiModelProperty("被评对象类型编码")
  private String customFieldValue18;

  /**
   * 自定义字段值7
   */
  @NotNull(message = "归属内容表主键ID不能为空")
  @ApiModelProperty("归属内容表主键ID")
  private String customFieldValue7;

  /**
   * 自定义字段值8
   */
  @NotNull(message = "数据归属内容表类型编码不能为空")
  @ApiModelProperty("数据归属内容表类型编码")
  private String customFieldValue8;

  /**
   * 自定义字段值9
   */
  @NotNull(message = "数据归属内容表主键ID不能为空")
  @ApiModelProperty("数据归属内容表主键ID")
  private String customFieldValue9;

  /**
   * 自定义字段值10
   */
  @ApiModelProperty("扩展字段2")
  private String customFieldValue10;

  /**
   * 自定义字段值11
   */
  @NotNull(message = "填报评价责任人对象ID不能为空")
  @ApiModelProperty("填报评价责任人对象ID")
  private String customFieldValue11;

  /**
   * 自定义字段值12
   */
  @NotNull(message = "填报评价责任人业务角色对象ID不能为空")
  @ApiModelProperty("填报评价责任人业务角色对象ID")
  private String customFieldValue12;

  /**
   * 自定义字段值13
   */
  @NotNull(message = "填报评价责任人业务角色标识不能为空")
  @ApiModelProperty("填报评价责任人业务角色标识")
  private String customFieldValue13;

  /**
   * 自定义字段值14
   */
  @NotNull(message = "填报评价责任人业务角色对象名称不能为空")
  @ApiModelProperty("填报评价责任人业务角色对象名称")
  private String customFieldValue14;

  /**
   * 自定义字段值15
   */
  @NotNull(message = "数据归属个人ID不能为空")
  @ApiModelProperty("数据归属个人ID")
  private String customFieldValue15;

  /**
   * 自定义字段值16
   */
  @ApiModelProperty("上一归属周期ID")
  private String customFieldValue16;

  /**
   * 自定义字段值17
   */
  @ApiModelProperty("上一周期被评对象目标周期ID")
  private String customFieldValue17;

  /**
   * 自定义字段值20
   */
  @NotNull(message = "父子中过程周期类型不能为空")
  @ApiModelProperty("父子中过程周期类型")
  private String customFieldValue20;

  /**
   * 自定义字段值21
   */
  @NotNull(message = "本目标归属周期的计算周期五模型不能为空")
  @ApiModelProperty("本目标归属周期的计算周期五模型")
  private String customFieldValue21;

}
